package org.code.boot.domain.boot;

import java.math.BigDecimal;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.baomidou.mybatisplus.annotation.TableField;
import org.code.boot.domain.BaseEntity;

/**
 * 火车票订单对象 biz_train_order
 * 
 * @author coder
 * @date 2025-08-28
 */
public class BizTrainOrder extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 火车票订单ID */
    private Long trainOrderId;

    /** 用户ID */
    private Long userId;

    /** 火车ID */
    private Long trainId;
    /** 火车车次 */
    private String trainNumber;

    /** 乘客姓名 */
    private String passengerName;

    /** 乘客电话 */
    private String passengerPhone;

    /** 座位号 */
    private String seatNumber;

    /** 订单金额 */
    private BigDecimal orderAmount;

    /** 订单状态 */
    private String orderStatus;

    /** 用户ID名称 */
    @TableField(exist = false)
    private String userIdName;

    /** 火车ID名称 */
    @TableField(exist = false)
    private String trainIdName;

    /** 出行日期 */
    @TableField(exist = false)
    private String travelDate;

    public void setTrainOrderId(Long trainOrderId) 
    {
        this.trainOrderId = trainOrderId;
    }

    public Long getTrainOrderId() 
    {
        return trainOrderId;
    }

    public void setUserId(Long userId) 
    {
        this.userId = userId;
    }

    public Long getUserId() 
    {
        return userId;
    }

    public void setTrainId(Long trainId) 
    {
        this.trainId = trainId;
    }

    public Long getTrainId() 
    {
        return trainId;
    }

    public void setPassengerName(String passengerName) 
    {
        this.passengerName = passengerName;
    }

    public String getPassengerName() 
    {
        return passengerName;
    }

    public void setPassengerPhone(String passengerPhone) 
    {
        this.passengerPhone = passengerPhone;
    }

    public String getPassengerPhone() 
    {
        return passengerPhone;
    }

    public void setSeatNumber(String seatNumber) 
    {
        this.seatNumber = seatNumber;
    }

    public String getSeatNumber() 
    {
        return seatNumber;
    }

    public void setOrderAmount(BigDecimal orderAmount) 
    {
        this.orderAmount = orderAmount;
    }

    public BigDecimal getOrderAmount() 
    {
        return orderAmount;
    }

    public void setOrderStatus(String orderStatus) 
    {
        this.orderStatus = orderStatus;
    }

    public String getOrderStatus() 
    {
        return orderStatus;
    }

    public void setUserIdName(String userIdName) 
    {
        this.userIdName = userIdName;
    }

    public String getUserIdName() 
    {
        return userIdName;
    }

    public void setTrainIdName(String trainIdName) 
    {
        this.trainIdName = trainIdName;
    }

    public String getTrainIdName() 
    {
        return trainIdName;
    }

    public void setTravelDate(String travelDate) 
    {
        this.travelDate = travelDate;
    }

    public String getTravelDate() 
    {
        return travelDate;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("trainOrderId", getTrainOrderId())
            .append("userId", getUserId())
            .append("trainId", getTrainId())
            .append("passengerName", getPassengerName())
            .append("passengerPhone", getPassengerPhone())
            .append("seatNumber", getSeatNumber())
            .append("orderAmount", getOrderAmount())
            .append("orderStatus", getOrderStatus())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .toString();
    }

    public String getTrainNumber() {
        return trainNumber;
    }

    public void setTrainNumber(String trainNumber) {
        this.trainNumber = trainNumber;
    }
}
